﻿
namespace DigitalCv.Data
{
    using System;
    using System.Collections.Generic;
    
    using global::DigitalCv.Data.Sections;

    public class Cv : IEntity
    {
        private IList<Technology> technologies;

        private IList<Tool> tools;

        private IList<Practice> practices;

        public int Id { get; set; }

        public Version Version { get; set; }

        public string Title { get; set; }
        
        public DateTime CreatedDate { get; set; }

        public DateTime LastModified { get; set; }

        public IList<ISection> Sections { get; set; }

        public IList<Technology> Technologies
        {
            get
            {
                return this.technologies ?? (this.technologies = new List<Technology>());
            }
            
            set
            {
                this.technologies = value;
            }
        }

        public IList<Tool> Tools
        {
            get
            {
                return this.tools ?? (this.tools = new List<Tool>());
            }
            
            set
            {
                this.tools = value;
            }
        }

        public IList<Practice> Practices
        {
            get
            {
                return this.practices ?? (this.practices = new List<Practice>());
            }
            
            set
            {
                this.practices = value;
            }
        } 
    }
}